struct DiscoDeArchivoConfig
{
char sNombre[25];
int Conectado;			/*se le carga VERDADERO ó FALSO*/

};

typedef struct valoresCHS
{
	int cabezal;
	int cilindros;
	int sectores;
}chs;

struct ListaIDdescriptors 
{
char sDescriptorID_delPedido[20];
char sDescriptorID_delDA[20];
char sSocketPorElCualResponder[20];   /*depende de quien haya hecho el pedido, puede ser el socket que esta conectado con el hilo de la consola, o el socket al que se conecto el array*/
char cCerrarONoSocket;		/*CERRAR_SOCKET   ó NO_CERRAR*/
struct ListaIDdescriptors * Sgt;
struct ListaIDdescriptors * Ant;

};



struct DiscoConocido
{
char sNombre[25];
int Estado;
int iSocketArrayParaHDA;				 /*socket que conecta al hilo principal con el hilo para el disco correspondiente*/
int iSocketHDAParaArray;				/*socket que conecta al hilo para el disco correspondiente con el hilo principal*/
int iSocketHDAParaDA;					/**socket que conecta al hilo para el disco correspondiente con el disco****/

struct DiscoConocido * Sgt;
struct DiscoConocido * Ant;

struct ListaIDdescriptors * ListaDeIDPedidos;
struct ListaIDdescriptors * ListaDeIDPedidos_Ult;

};

struct Pedido_PutSectores
{
char sDescriptorID_delPedido[20];
int iDiscosAEspejar;
struct Pedido_PutSectores * Sgt;
struct Pedido_PutSectores * Ant;

};

struct Pedido_PutSectores * ListaPedidos_Put;
struct Pedido_PutSectores * ListaPedidos_Put_Ult;


struct DiscoConocido * ListaDiscos;
struct DiscoConocido * ListaDiscos_Ult;

int iCantidadDeDAConectados;
int iCantidadAEspejar;

char sNombre[25];
char sIP_Local[20];
char sIP_Remota[20];
int PuertoParaEscucharPedidosPorSincro;

int iPuertoRemoto;

int iPuerto_Local;
int iCantidadDiscosDeArchivoConfig;
chs glChs;


struct DiscoDeArchivoConfig *pDiscosDeArchivoConfig;

int Estado;
int SubEstado;
int ArrayCompleto;